package org.jeecg.modules.manage.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.modules.manage.entity.CaishuiTaskSettleItem;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/**
 * @Description: 任务结算
 * @Author: yfkj
 * @Date:   2023-02-20
 * @Version: V1.0
 */
@Data
@ApiModel(value="caishui_task_settlePage对象", description="任务结算")
public class CaishuiTaskSettlePage {

	/**主键*/
	@ApiModelProperty(value = "主键")
    private String id;

	/**创建人*/
	@ApiModelProperty(value = "创建人")
    private String createBy;

	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "创建日期")
    private Date createTime;

	/**更新人*/
	@ApiModelProperty(value = "更新人")
    private String updateBy;

	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "更新日期")
    private Date updateTime;

	/**所属部门*/
	@ApiModelProperty(value = "所属部门")
    private String sysOrgCode;

	/**税源地ID*/
	@Excel(name = "税源地ID", width = 15)
	@ApiModelProperty(value = "税源地ID")
    private String companyId;

	/**商户ID*/
	@Excel(name = "商户ID", width = 15)
	@ApiModelProperty(value = "商户ID")
    private String businessId;

	/**任务名*/
	@Excel(name = "任务名", width = 15)
	@ApiModelProperty(value = "任务名")
    private String name;

	/**备注*/
	@Excel(name = "备注", width = 15)
	@ApiModelProperty(value = "备注")
    private String remark;

	/**结算单*/
	@Excel(name = "结算单", width = 15)
	@ApiModelProperty(value = "结算单")
    private String settleDoc;

	/**总金额*/
	@Excel(name = "总金额", width = 15)
	@ApiModelProperty(value = "总金额")
    private java.math.BigDecimal totalAmount;

	/**总笔数（人数）*/
	@Excel(name = "总笔数（人数）", width = 15)
	@ApiModelProperty(value = "总笔数（人数）")
    private Integer totalNum;

	/**成功金额*/
	@Excel(name = "成功金额", width = 15)
	@ApiModelProperty(value = "成功金额")
    private java.math.BigDecimal successAmount;

	/**成功笔数*/
	@Excel(name = "成功笔数", width = 15)
	@ApiModelProperty(value = "成功笔数")
    private Integer successNum;

	/**失败金额*/
	@Excel(name = "失败金额", width = 15)
	@ApiModelProperty(value = "失败金额")
    private java.math.BigDecimal failAmount;

	/**失败笔数*/
	@Excel(name = "失败笔数", width = 15)
	@ApiModelProperty(value = "失败笔数")
    private Integer failNum;

	/**状态：0-待提交，1-待审核，2-已通过，3-已驳回，4-已作废*/
	@Excel(name = "状态：0-待提交，1-待审核，2-已通过，3-已驳回，4-已作废", width = 15)
	@ApiModelProperty(value = "状态：0-待提交，1-待审核，2-已通过，3-已驳回，4-已作废")
    private Integer status;

	/**发送状态：0-待发放，1-已发放，2-已取消*/
	@Excel(name = "发送状态：0-待发放，1-已发放，2-已取消", width = 15)
	@ApiModelProperty(value = "发送状态：0-待发放，1-已发放，2-已取消")
    private Integer extendStatus;

	/**提交时间*/
	@Excel(name = "提交时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "提交时间")
	private Date submitTime;

	/**发放时间*/
	@Excel(name = "发放时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "发放时间")
    private Date extendTime;

	/**审核时间*/
	@Excel(name = "审核时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "审核时间")
    private Date checkTime;
	
	@ExcelCollection(name="任务结算详情")
	@ApiModelProperty(value = "任务结算详情")
	private List<CaishuiTaskSettleItem> caishuiTaskSettleItemList;
	
}
